home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Linux Cubed Series 7: Sunsite
/
Linux Cubed Series 7 - Sunsite Vol 1.iso
/
system
/
linux-bo
/
etherboo.000
/
etherboo
/
etherboot-2.0
/
netboot-freebsd
/
objdump86.c
< prev
next >
Wrap
C/C++ Source or Header
|
1996-06-22
|
794b
|
51 lines
#include <stdio.h>
#include "a.out.h"
void objdump(filename)
char *filename;
{
FILE *f;
struct exec ex;
long i;
if ((f = fopen(filename, "r")) == NULL)
{
perror(filename);
return;
}
if (fread(&ex, sizeof(ex), 1, f) != 1)
{
fprintf(stderr, "%s: Cannot read header\n", filename);
fclose(f);
return;
}
if (BADMAG(ex))
{
fprintf(stderr, "%s: Not an a.out file\n", filename);
fclose(f);
return;
}
if (fseek(f, (long)A_HEADERSIZ, SEEK_SET) < 0)
{
fprintf(stderr, "Fseek failed on %s\n", filename);
fclose(f);
exit(1);
}
for (i = ex.a_text + ex.a_data; i > 0; --i)
putchar(fgetc(f));
fclose(f);
}
int main(argc, argv)
int argc;
char **argv;
{
if (argc < 2)
{
fprintf(stderr, "Usage: %s file\n", argv[0]);
exit(1);
}
objdump(argv[1]);
exit(0);
}